home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Plus 1995 #3 & #4
/
Amiga Plus CD - 1995 - No. 3 and 4.iso
/
pd-listen
/
fish-komplett
/
history
< prev
next >
Wrap
Text File
|
1995-07-20
|
24KB
|
577 lines
Listed in reverse-chronological order, the following text details changes
made to KingFisher, KFServer, and RexxFisher since their initial public
release with version 2.1:
v2.9 3-Apr-1995
»»» BUG FIXES:
KINGFISHER will no longer add of junk to the end of a custom
display format.
KFSERVER now reports an uptime of 0 seconds as "0s" rather than a
null string (oh, my, the Earth moved!) (yawn)
Fixed Error-By-1 on correcting VersionLinks that point into a
region of records that are being deleted. Also included the
Previous Link in the check (only the NextLink was checked before.)
Removed a bug that prevented ONDISK index files from working. It
is now possible to specify if a database index is to be used as an
INRAM index (fastest) or ONDISK (no overhead in memory!)
»»» IMPROVEMENTS:
KINGFISHER now adjusts its gadget proportions according to the
screen size. A medium resolution (such as 640x200) display will
now present less stretched gadgets.
Some images replaced with nicer ones, and colors (especially the
4th (usually blue) color) cleaned up.
When running under Kickstart 3.0 or later, the KingFisher logo in
the About window will now be displayed in up to 16 shades of gray.
The image will be remapped to provide the best color fidelity
available from Intuition's free/shared pens. An 8-color screen is
not the best, but a 16 or even 32 color screen (can provide quite
excellent reproduction!)
The text formatting routines finally handle paragraph and field
indentations properly! Default format cleaned up and improved.
Added a \- symbol to the format parser, which fills the rest of the
line with a dashed line (------------...) and then inserts a
newline as if \n was given.
Added a \N (uppercase version of \n) to function as a conditional
newline that is added only if the preceding line is not already a
blank line.
The 'author' field is now handled as a "verbatim" field, meaning
that linefeeds in the field are treated as real newlines instead of
soft returns.
Added option capability to the @{field} specifiers. Options are
specified BEFORE the name of the field, and enclosed in []'s such
as:
@{[f]author}
@{[0>]description}
Available options at this time are:
f,v Force Flow or Verbatim Mode.
In Flow Mode, the presence of a newline in
the file is treated as a blank space would, and
only a \n sequence is regarded as a newline
(paragraph break.) This produces word-wrapped
paragraphs, where the end of a paragraph is
explicitly indicated with a \n sequence. The
DESCRIPTION is usually handled in Flow Mode.
In Verbatim Mode, a newline in the file is
treated the same as a forced paragraph break from
the presence of a \n sequence. The AUTHOR field is
usually handled in Verbatim Mode.
By default, all fields are treated in flow
mode, except for: reference, address, email, docs,
run, stored-in, and author.
If you wish to add the "contents" field to
the display, specify it as @{[v]contents} -- the
option set [v] forces KingFisher to use verbatim
mode instead of the default flow mode.
0,1 How many lines to be placed between paragraphs.
By specifying '0' in the option set, you can remove
the blank lines that KingFisher inserts between
paragraphs (in the description field, for example.)
|,> Force non-indented or indented paragraphs. By
adding '>' to the option set (in the description
field, for example) you can add an indentation at
the start of paragraphs (all, except the first);
this is especially useful in combination with a '0'
(see above) to improve readability. Try it!
@{[0>]description}
The frames for the Browse and Search gadget groups are now set to
the same height. This makes for a somewhat cleaner appearance.
The search expression gadget will now adjust its size to a
combination of extra wide and very narrow characters, weighted
towards the proportionally wider ones. This allows the window to
be sized narrower while maintaining a sense of the current font's
size requirements.
The Listview scrollers are now adjusted in width to whatever font
is selected for the window. This is _much_ nicer with large fonts;
the minimum size is 16, no matter what. The formula is 2/3 of the
font size, so that any font sized above 24 will bring the adjust-
ment into play (i.e. a font size 30 will use a scroller width of
20.)
v2.8 6-Mar-1995
»»» BUG FIXES:
KINGFISHER will now properly handle EQUAL and NOT EQUAL comparisons
in expressions. These did not work until now because of a trailing
newline in the field data.
Case sensitivity in search expressions is now implemented properly.
Improved expression evaluation speed somewhat. Fixed minor bug in
evaluation routine that may have been responsible for failures to
find some information.
Will no longer disable all relevant browsing and motion gadgets
when attempting to step one record past the end of the database,
leaving only the keyboard (left-arrow key, for example) available
to move one record backward and "recover" the use of the gadgets.
Why did I not find this earlier? Why did nobody ever report this?
Will no longer place the .INDEXINFO= tag within the markers when
writing records to the clipboard. This was an nasty error on my
part that would make it impossible for KFServer to properly handle
clipboard input. A very embarrassed "Sorry!"
Properly updates the VersionLinks after adding new fish to the
database.
Now properly updates the QuickIndex when adding new fish. This was
a very dreadful omission in the code for which I do apologize! My
thanks to Dean Ridgway for making me aware of this problem.
When opening a KingFisher Release 1 database, and the index is
found to be a Release 1 index, KingFisher Release 2 will perform an
on-the-fly conversion of the Release 1 index into a Release 2 index
located in RAM. This has always been the case, but there was a
very unfortunate mis-computation of index-size that could result in
error messages and some junk at the end of the index.
When hitting the close gadget while scanning a directory tree, the
program will no longer lock up (it previously attempted to block a
window that was already blocked; although officially supported,
this does seem to cause trouble...)
REXXFISHER's RF_OBTAIN command now returns the proper values when
using the PVER and NVER options.
KFSERVER's I/O handlers and indexing operations were rewritten from
the ground up to streamline their operation and eliminate a number
of strangenesses that grew there over time. Many problems should
be fixed now: occasional case sensitivity to the ".name" identifier
and serious problems with (re)indexing operations involving the
QuickIndex and partitioned databases.
Should now be able to find files in the root directory of a volume
(or logical assignment.) This was a bug in SAS' dirwalker.c (for
those interested, the problem is with walkdir(): appending a '/' is
done only when the last character is not already a ':' or '/' but
the offset tested is the character BEYOND the last one, so it will
ALWAYS append the '/' to produce bogus names like: "SYS:/foo/KF.pi"
»»» IMPROVEMENTS:
KINGFISHER can now use DOS Patterns (i.e. "#?(foo|bar)#?" in search
expressions. This is indicated in an expression with the use of
the '#' operator (as opposed to =, !=, <=, >=, $, ...) Example:
name # "#?(foo|bar)#?"
No longer activates its window if KingFisher's screen is not the
active one. This permits starting KingFisher in the background
(perhaps with a hotkey) without having to "fear" that while you're
typing something the console will get yanked away from your active
window. Likewise, KingFisher will not active the windows it opens
(when a search completes, for example) if its main window was
inactive.
Also supported now is the option to sort links by their associated
version number. This means that if a CD-ROM contains version 1.0,
2.0, 3.0, 1.2, 1.5, 1.9, and 3.1 the VersionLinks will be ordered
to allow you to scan: 1.0, 1.2, 1.5, 1.9, 2.0, 3.0, 3.1 regardless
if this means moving forward or backward through the database!
Notice that some programs use rather ill-constructed
version numbers, such as 1.02 (which is handled as 1.2) since the
two version numbers (before and after the dot) are not fractions
but whole numbers.
REXXFISHER experienced the same improvements and bug fixes to the
search engine as KingFisher did (they share the engine code.)
RexxFisher's version number upgraded from 1.11 to 2.8 to make the
versions less confusing with respect to KingFisher and KFServer.
New command to select a specific record without actually retrieving
its data. This is quicker than an RF_GETFISH, yet the RF_OBTAIN
command can still be used to obtain index-related data:
RF_SELECT fishnumber
KFSERVER now informs a client program if it cannot open a database
file. It is then up to the client to retry the operation based on
possible user-feedback. This is implemented to prevent the server
from blocking. You can (if you absolutely must do this) force the
server to block and present a message without involving the client
by setting the following in the KFServer.prefs file:
SUPPRESS-REQUESTERS=NO
The value defaults to YES.
Now actually removes deleted records from the database, eliminating
the chance that subsequent additions followed by reindexing scans
into only half-overwritten junk. A side-effect of this is that a
Reindex operation following a Delete operation will NOT recover any
records. Delete is now permanent!
Now performs a sanity check on an inRAM index (but not onDISK)
before loading. This produces a meaningful diagnostic and prevents
confusing errors later.
When a database is opened multiple times (perhaps by multiple
clients) the the first client is the only one who has the right to
modify the database. This prevents multiple clients attempting to
alter the flags, for example. This mechanism will be improved in
the future to permit implicit individual record locking.
v2.7 19-Jan-1995
»»» BUG FIXES:
KINGFISHER now properly calculates text layout in the About Window.
Until now it failed to make use of available space the way it was
meant to, especially with large fonts.
System Requesters now open up on KingFisher's screen even if it is
a custom screen, rather than bringing the Workbench to the front.
While adding fish, a response of "No" was synonymous with "Cancel."
Needless to say, this was not the way it was intended.
If the server terminates while KingFisher is in the middle of an
operation during which it may not check for an exit signal from the
server, it will no longer attempt to re-start the server in order
to continue the operation in progress.
KFSERVER had a bug in kfcSETPOS command that caused the index entry
of the PREVIOUS record to be addressed (for inRAM index.)
»»» IMPROVEMENTS:
KINGFISHER now (optionally) frames related gadgets with recessed
borders to group gadgets visually. The option is available from
the PREFERENCES/Display menu.
Added ability to switch SmartRefresh/SimpleRefresh option from the
PREFERENCES/Display menu. This used to be only available through
the tooltypes or the KingFisher2.prefs file.
'Build VersionLinks...' command now scans the database QuickIndex
and builds a new set of version links. This was an O(n) algorithm
in KingFisher 1, but is now, regrettably, O(n²) because KingFisher
2 can no longer make the easy assumptions about the database that
KingFisher 1 could make.
The PREFERENCES/Display submenu now uses check marks to indicate
which (if any) of the 'Load Custom Format...' and 'Show all fields
in record' choices is the current one. This is an issue only with
the Display Format option, as the print and export formats have no
special dual option, and their presence or absence is easily noted
by the enable/disable status of their respective 'Drop...' options.
Now adds the START/STOP markers to the clipboard because it is
easier to remove them instead of having to manually add them. The
.INDEXINFO item is also added for maximum future compatibility.
With the Search Result window's new menu item "Copy to Clipboard,"
all records in the Search Set are copied to the clipboard, each
separated with proper START/STOP markers to make their separation
easier.
The UNREGISTERED version of KingFisher now requires user action to
clear the initial About window to encourage reading of the text;
it will no longer go away as it used to with a timeout. The
REGISTERED version is not affected by this change.
REXXFISHER can now truncate a database at the current record. To
prevent accidents, the command can be given a parameter that
specifies the exact number of records that you expect to be deleted
by the operation. If the parameter is provided but does not match
the number of actual records that would be deleted, then the call
will fail and no truncation will take place. Omitting the value
will by-pass this safety measure.
RF_TRUNCATE [ records ]
v2.6 02-Dec-1994
»»» BUG FIXES:
KINGFISHER did not make REVERSE searches based on QuickIndex any
faster than they were in version 2.4. This has been corrected.
Please note that the QuickIndex and SearchMasks are not currently
compatible and cannot be used together. This will be improved in
a future release.
Two problems involving severely trashed, and mysteriously vanishing
text (Reconstruct database index...) in menus have been corrected.
Fixed a memory re-allocation bug that was responsible for producing
trashed items in the DBInfo list and other related problems of this
sort.
When the registered version is run without the NOOUTPUT option, it
no longer claims to be freely distributable. Bit of an oversight!
KFSERVER now returns the intended values for a kfcSELECTDATABASE
command. Previously, the values returned by the command were not
handled properly, although no immediately adverse effects came of
that.
Improved creation of new databases. New databases should no longer
come up as read-only databases when they are first created, nor
should there be any problems now adding data to a newly created
database. Unconditional error messages have now been guarded with
a verbosity level check, so the server will be less prone to ramble
on about the things that are and are not happening.
System Requesters are no longer suppressed. At one time this was
meant to prevent the server from blocking in case that an unmounted
volume was accessed, but this inadvertently disabled the server's
ability to serve databases stored on off-line (unmounted) volumes.
A bug was fixed involving detection of Read/Write status of a
database. A database whose primary index file is stored in the
root directory of a logical or physical volume (i.e. in DF0: or
in KF2:, as opposed to a subdirectory DH0:Database/) would not be
able to determine the status and assume Read-Only ability.
»»» IMPROVEMENTS:
KINGFISHER now supports the clipboard. Writes current fish to the
clipboard; Appends one or more fish from the clipboard. Clipboard
currently fixed to unit 0.
The Center Window option now immediately centers the window on the
current display when activated. The window will be re-centered
when the size is changed, and the option is automatically turned
off when the window is repositioned.
A new option in PREFERENCES/DISPLAY is available to display all
fields in a record. This uses the custom display mechanism and can
be turned off by dropping the custom display formed by this option.
Can now select larger fonts (previous version seemed to be limited
to size of 24 pixels or less, at least on my system.)
KFSERVER now reports total uptime and bases percentage of use on
the total time the server was USED rather than the client's total
connect time (which eventually led to 0% used when the server was
idle.)
REXXFISHER now has the ability to add all fish from a file to the
current database, as well as affect the previous and next version
link values in the index. The new commands are:
RF_ADDFISH 'filename'
RF_SETVLINK PVER fishnumber | NVER fishnumber
v2.5 05-Nov-1994
»»» BUG FIXES:
Explicitly quoted string constants in expressions are no longer
affected by the TRIM BLANKS setting which shaves off blank spaces
in expressions to avoid mistakes with blanks at the end of strings.
»»» IMPROVEMENTS:
The QuickIndex feature now deserves its name: It has been sped up
so it can search 4500 records in a mere second (the exact speed
depends on how many matches are produced and need to be processed.)
Unlike the QuickIndex that was part of KingFisher 1.x, this
QuickIndex feature is a) fully automatic and b) not limited to
substring searches (i.e. you can search "name$king & ~name=kingcon)
which was possible with KingFisher 1 only when not using the quick
index.
The expression syntax has been enhanced to permit a shortcut:
field op ( value | value & value ^ value )
is equivalent to:
field op value | field op value & field op value ^ field op value
Thus:
name$(king|aqua|fish)
Is the same as:
name$king | name$aqua | name$fish
The portion in ()'s may contain multiple levels of parentheses to
prioritize the evaluation order:
name$(fish&(king|net|sticks))
represents:
name$fish & ( name$king | name$net | name|sticks )
v2.4 01-Nov-1994
»»» BUG FIXES:
If the KFServer is shutdown, all clients (such as RexxFisher and
KingFisher) are now sent break signals instead of exit messages.
This is more reliable and less prone to lost resources.
Improvements made to handling user-interaction while adding records
to the database.
Once again, the $VER: tags have been fixed. The fact that the type
identification ("EVALUATION COPY"/"REGISTERED") left an illegal
white space in the string caused further problems. This time the
identification (EVALUATION/REGISTERED) has been moved to AFTER the
date portion. Even though this is still not recommended practice,
so many programs used this method to append copyright or other
text, that Commodore made special arrangements to support it; this
is significantly more compatible than adding non-numeric letters to
the version number.
»»» IMPROVEMENTS:
New menu command to reconstruct damaged or lost index files. This
command is NOT named "reindex" to avoid possible misunderstandings
about its purpose. Using "Reconstruct database index" causes the
loss of all existing version links and individual record flags, so
it is not a function to be used casually.
Additional interface features added for more keyboard control
(tabbing between Main and Search Result windows, for example.)
KingFisher now recognizes if a search expression references only
the field upon which the QuickIndex is based. In such cases a
search is at least twice as fast as before. Further speed-up is
scheduled for a future version.
Documentation has been rewritten with AmigaGuide V39/V40 features
in mind. If running under 2.x, the Installer will alter the .guide
to make it readable with earlier versions of AmigaGuide.
New Installer script permits partial installation and upgrades to
be performed.
v2.3 05-Sep-1994
»»» BUG FIXES:
Corrected several problems involving access to an empty database
that would a) produce a variety of complaints, some even completely
incorrect assertions, b) not properly ghost relevant gadgets, and
c) produce potentially misleading or bogus values for the numeric
(fish/disk) gadget.
Potential problem removed involving an improperly terminated node-
context table for the AmigaGuide interface. This may have caused
improper, unreliable, or unresponsive functioning of KingFisher's
HELP system.
Compatibility problem resolved with the Fish/Disk cycle gadget,
which inadvertently used a NULL font pointer. This caused GadTools
to use the system default font but could confuse system extensions
that enhance cycle gadgets to produce pop-up lists, instead.
Formatting problem solved which would not properly terminate the
formatted output. This affected both KingFisher and RexxFisher due
to shared code.
Selecting an expression from the Search Expression History window
will now cause the selected item to be moved to the top of the
list.
»»» IMPROVEMENTS:
New menu command to edit a format file using external editor. File
notification will be implemented in the next release.
AmigaGuide is now opened on demand only. This preserves RAM when
the help system is not needed and delays the need to insert a disk
with the .guide file if this file is kept off-line on a floppy, for
example.
Now supports pointing at a gadget with the mouse and pressing HELP.
This completes the implementation of context sensitive help.
Displays are now handled with SIMPLEREFRESH; KingFisher takes care
of its own refreshing, which means that Intuition no longer has to
maintain a backup bitmap in case an obscured portion of the window
needs "repair" (thus reducing RAM requirements!) and speeding up
the moving of KingFisher's windows, especially on deep screens,
such as 256 color displays.
If you prefer the older method, place SMARTREFRESH into the
tooltypes or change the REFRESH entry in the .prefs file to SMART.
Now allows selection of any font from the system to be used for
menus, requesters, display, etc. This functionality may be later
expanded to a set of three or so separate fonts for various parts
of the interface.
Starting with Kickstart V38 (2.1) KingFisher now allows you to
select a custom screen mode, complete with size, number of colors,
and autoscroll. For V37 (2.04) it is necessary to construct the
.prefs entry manually. This is detailed in the documentation for
that menu command.
v2.2 14-Aug-1994
»»» BUG FIXES:
Fixes a bug with adding records to the database. Symptom: new
records would show up blank and would, in fact, have only the 5
character (field identifier) string ".name" in them.
Also fixed another bug with adding records to a database from which
records had previously been removed (Delete Fish); the new records
would be always appended to the database instead of placed in their
proper location (overwriting old, unused data) while the index
would indicate the position the records should have occupied. The
result was apparently corrupted information.
It is safe to delete all records starting with the first
"bad" one and then re-adding them.
The Version Tags ($VER:) in KingFisher and KFServer have been fixed
to be Style Guide compliant. It appears that V40 software (KS 3.1)
is more lenient than V37/V38 with respect to spaces in the program
name. This was required to make the 'DoPatch' script/tool work.
A problem was corrected with the 'DBInfo' entries in the .prefs
file where bogus information was stored to the entries. Editing
the KingFisher2.prefs file and removing all lines beginning with
'DBInfo=' will assure that these bogus entries will not interfere
with normal operation. As more databases are added and the need
arises to maintain last-position for them all, KingFisher will
reclaim the space used by the oldest (possibly bogus) items, so
there is not real need to modify the file and remove bogus entries.
»»» IMPROVEMENTS:
The promised speedup to the searching with masks has now been
implemented. This may be dozens, if not hundreds of times faster
than a previous search. Once you have setup various flags, you may
be able to build a Search Set at blinding speed!
A new option in the Global Preferences causes KingFisher to always
open its window in the center of the display when you start the
program. This is useful especially when KingFisher's window opens
on public screens of varying resolutions and might otherwise end up
being pushed about to suit varying resolutions; with the new Center
Main Window option on, you can rely on it always appearing in the
center.
KingFisher now recognizes the 'Help-File' entry in the .prefs file,
which specifies the name of the .guide; the default for this entry
is "KingFisher2.guide"; without path, AmigaGuide will look for this
file in several places, including the default directory.
#EOT